package com.ccrfid.rmc6.repository.sys;

import com.ccrfid.rmc6.entity.sys.DictEntity;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.Repository;

import java.util.List;

public interface DictRepository extends Repository<DictEntity, Integer> {
    //
    List<DictEntity> getAllBy();
    //
    List<DictEntity> getAllByTypeId(Integer typeId);

    List<DictEntity> getAllByTypeIdAndEnabled(Integer typeId, Integer enabled);

    List<DictEntity> getAllByTypeIdAndPidIsNull(Integer typeId);

    List<DictEntity> getAllByTypeIdAndEnabledAndPidIsNull(Integer typeId, Integer enabled);
    //
    DictEntity getById(Integer id);
    //
    DictEntity save(DictEntity entity);
    //
    Boolean existsById(Integer id);
    //
    List<DictEntity> getAllByPid(Integer pid);

    //
    @Query("select d from DictEntity d where d.enabled = 1 and d.typeId = 42 and d.id > 410 and d.id not in (441,442,443,444,445,446,447,448)")
    List<DictEntity> getGuardTypes();

    DictEntity getByDictNameAndTypeId(String dictName, Integer typeId);

}
